var path= require('path')//由于webpack基于node进行构建的所以webpack中NODE的语法都是支持的
//当以命令行运行webpack是时候，工具会发现并没有要打包的入口和出口文件，它就会拿到这个配置对象，进行打包
var htmlWebpackPlugin = require('html-webpack-plugin')//在内存中注入页面

module.exports={
    entry:path.join(__dirname,'./src/main.js'),
    output:{
        path:path.join(__dirname,'./dist/bundle.js'),
        filename:'bundle.js'
    },
    plugins:[//所有wenpack的配置节点
        new htmlWebpackPlugin({
            template:path.join(__dirname,'./src/index.html'),
            filename:'index.html'
        })
    ],
    module:{//配置第三方loader模块的
        rules:[//匹配规则
            { test:/\.css$/,use:['style-loader','css-loader'] },//处理css文件的
            { test:/\.less$/,use:['style-loader','css-loader','less-loader'] },//处理less文件的
            { test:/\.scss$/,use:['style-loader','css-loader','sass-loader'] },//处理scss文件的
            { test:/\.(jpg|png|gif|bmp|jpeg)$/,use:'url-loader?limit=113956&name=[hash:8]-[name].[ext]' },//处理url路径的
            //limit给定的值，当图片大小小于或者等于给定的值时候则不会转为base64格式字符串，当大于的时候则会转为64为base格式字符串
            { test:/\.(ttf|eot|svg|woff|woff2)$/,use:'url-loader'},//处理字体文件的loader
            { test:/\.js$/,use:'babel-loader',exclude:/node_modules/ },
            { test:/\.vue$/,use:'vue-loader' },//配置vue组件的loader
           
        ]

    }



}
